In an XML scheme, ASN.1 and the like that are used as methods that encode data being used inside software into a type of data for communication when current robot software transmits data via communication, an encoder or a decoder is configured in accordance with a predetermined data structure. These methods have the problem of having to reconfigure an encoder/decoder when a new type is added, and the problem of the configuration of an encoder/decoder being difficult when sending a multiple array or a class having a complicated structure.
Recently, in order to overcome the above problems, “boost.org” presented a serialization library. Although the serialization library is flexible to any structure, it is difficult to use because errors occur in communication between Operating Systems (OSs), for example, between Windows and Linux.
Furthermore, it is difficult to use an encoding method generated by serialization in another language, such as C or Python because the encoding method is not disclosed.